﻿namespace VIT.DataSource
{
    using System.Collections.Generic;
    using System.Linq;

    public class DataSource
    {
        private static IEnumerable<ItemName> Languages = new List<ItemName>
            {
                new ItemName { Name = "vi-VN" },
                new ItemName { Name = "en-US" },
            };
        public static List<ItemName> LanguageTypeCollection = Languages.ToList();

        private static IEnumerable<ItemStringSimple> LinkTargets = new List<ItemStringSimple>
            {
                new ItemStringSimple { Id = "_blank", Name = "_blank - cửa sổ mới" },
                new ItemStringSimple { Id = "_parent", Name = "_parent - Frame hiện tại" },
                new ItemStringSimple { Id = "_self", Name = "_self - Page hiện tại" },
                new ItemStringSimple { Id = "_top", Name = "_top - bỏ các trang frameset" }
            };
        public static List<ItemStringSimple> LinkTargetCollection = LinkTargets.ToList();

        private static IEnumerable<ItemStringSimple> TemplateConfigTypes = new List<ItemStringSimple>
            {
                new ItemStringSimple { Id = "Week", Name = "Week" },
                new ItemStringSimple { Id = "Month", Name = "Month" },
                new ItemStringSimple { Id = "Year", Name = "Year" }
            };
        public static List<ItemStringSimple> TemplateConfigTypeCollection = TemplateConfigTypes.ToList();

        private static IEnumerable<SimService> Sims = new List<SimService>
        {
            new SimService { Name = "Mobile", Number = "+84900000012" },
            new SimService { Name = "Vina", Number = "+8491020005" },
            new SimService { Name = "VietTel", Number = "+8480200030" },
        };
        public static List<SimService> SimCollection = Sims.ToList();

        private static IEnumerable<ItemName> ParameterTypes = new List<ItemName>
            {
                new ItemName { Name = "Text" },
                new ItemName { Name = "TextArea" },
                new ItemName { Name = "PassWord" },
                new ItemName { Name = "Number" },
                new ItemName { Name = "Color" },
                new ItemName { Name = "Bool" },
                new ItemName { Name = "Date" },
            };
        public static List<ItemName> ParameterTypeCollection = ParameterTypes.ToList();

        private static IEnumerable<ItemStringSimple> ParameterNames = new List<ItemStringSimple>
        {
            new ItemStringSimple { Id = "CategoryId", Name = "Mã danh mục"},
            new ItemStringSimple { Id = "ParentCategoryId", Name = "Mã danh mục cha" },
            new ItemStringSimple { Id = "ArticleId", Name = "Mã bài viết" },
            new ItemStringSimple { Id = "OrtherArticleId", Name = "Mã bài viết khác" },
            new ItemStringSimple { Id = "ProductId", Name = "Mã sản phẩm" },
            new ItemStringSimple { Id = "OrtherProductId", Name = "Mã Sản phẩm khác" },
            new ItemStringSimple { Id = "ColorId", Name = "Mã màu sắc" },
            new ItemStringSimple { Id = "StyleId", Name = "Mã kiểu" },
            new ItemStringSimple { Id = "ManufacturerId", Name = "Mã hãng sản xuất" },
            new ItemStringSimple { Id = "SupplierId", Name = "Mã nhà cung cấp" },
        };
        public static List<ItemStringSimple> ParameterNameCollection = ParameterNames.ToList();

        private static IEnumerable<ItemStringSimple> Positions = new List<ItemStringSimple>
        {
            new ItemStringSimple { Id = "top", Name = "Top" },
            new ItemStringSimple { Id = "left", Name = "Left" },
            new ItemStringSimple { Id = "center", Name = "Center" },
            new ItemStringSimple { Id = "right", Name = "Right" },
            new ItemStringSimple { Id = "bottom", Name = "Bottom" }
        };
        public static List<ItemStringSimple> PositionCollection = Positions.ToList();

        private static IEnumerable<ItemName> ParameterSources = new List<ItemName>
        {
            new ItemName { Name = "Product" },
            new ItemName { Name = "Article" },
            new ItemName { Name = "Category" },
            new ItemName { Name = "LinkLogo" },
            new ItemName { Name = "Picture" },
            new ItemName { Name = "Document" },
            new ItemName { Name = "Video" },
            new ItemName { Name = "Audio" },
        };
        public static List<ItemName> ParameterSourceCollection = ParameterSources.ToList();

        private static IEnumerable<ItemStringSimple> Repeats = new List<ItemStringSimple>
        {
            new ItemStringSimple { Id = "repeat", Name = "Default" },
            new ItemStringSimple { Id = "repeat-x", Name = "Repeat X" },
            new ItemStringSimple { Id = "repeat-y", Name = "Repeat Y" },
            new ItemStringSimple { Id = "no-repeat", Name = "No Repeat" }
        };
        public static List<ItemStringSimple> RepeatCollection = Repeats.ToList();

        #region Product
        private static IEnumerable<ItemIntSimple> ProductCarFuels = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Lắp ráp trong nước" },
            new ItemIntSimple { Id = 2, Name = "Nhập khẩu" }
        };
        public static List<ItemIntSimple> ProductCarFuelCollection = ProductCarFuels.ToList();

        private static IEnumerable<ItemIntSimple> ProductCarOrigins = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Lắp ráp trong nước" },
            new ItemIntSimple { Id = 2, Name = "Nhập khẩu" }
        };
        public static List<ItemIntSimple> ProductCarOriginCollection = ProductCarOrigins.ToList();

        private static IEnumerable<ItemIntSimple> ProductStatuss = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Mới" }, 
            new ItemIntSimple { Id = 2, Name = "Đã sử dụng" }
        };

        public static List<ItemIntSimple> ProductStatusCollection = ProductStatuss.ToList();

        private static IEnumerable<ItemIntSimple> ProductCarGearboxs = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Số cơ" }, 
            new ItemIntSimple { Id = 2, Name = "Số tự động" }
        };

        public static List<ItemIntSimple> ProductCarGearboxCollection = ProductCarGearboxs.ToList();

        private static IEnumerable<ItemIntSimple> PriceTypes = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "VNĐ" }, 
            new ItemIntSimple { Id = 2, Name = "USD" }
        };
        public static List<ItemIntSimple> PriceTypeCollection = PriceTypes.ToList();
        #endregion

        #region CRM
        private static IEnumerable<ItemIntSimple> WebStatus = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Đang dùng thử" },
            new ItemIntSimple { Id = 2, Name = "Sắp hết hạn dùng thử" },
            new ItemIntSimple { Id = 3, Name = "Hết hạn dùng thử" },
            new ItemIntSimple { Id = 4, Name = "Đã đăng ký" },
            new ItemIntSimple { Id = 5, Name = "Sắp hết hạng sử dụng" },
            new ItemIntSimple { Id = 6, Name = "Hết hạn sủ dụng" }
        };
        public static List<ItemIntSimple> WebStatusCollection = WebStatus.ToList();

        private static IEnumerable<ItemIntSimple> CRMContactReasons = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Nhắc sắp hết hạn dùng thử, thuyết phục đăng ký" },
            new ItemIntSimple { Id = 2, Name = "Hết hạn dùng thử, thuyết phục đăng ký" },
            new ItemIntSimple { Id = 3, Name = "Nhắc sắp hết hạn đăng ký, đề nghị gia hạn" },
            new ItemIntSimple { Id = 4, Name = "Hết hạn đăng ký, yêu cầu gia hạn" },
            new ItemIntSimple { Id = 5, Name = "Thông báo sự kiện, khắc phục lỗi ..." },
            new ItemIntSimple { Id = 6, Name = "Hỏi thăm tình trạng web, lấy ý kiến khách hàng .." },
        };
        public static List<ItemIntSimple> CRMContactReasonCollection = CRMContactReasons.ToList();

        private static IEnumerable<ItemName> CRMContactMethods = new List<ItemName>
        {
            new ItemName { Name = "Email" },
            new ItemName { Name = "SMS" },
            new ItemName { Name = "Call" }
        };
        public static List<ItemName> CRMContactMethodCollection = CRMContactMethods.ToList();

        private static IEnumerable<ItemIntSimple> CRMServices = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Sử dụng web" },
            new ItemIntSimple { Id = 2, Name = "Thiết kế giao diện riêng" },
            new ItemIntSimple { Id = 3, Name = "Nhiều Template" },
            new ItemIntSimple { Id = 4, Name = "Nâng cấp tài khoản" },
            new ItemIntSimple { Id = 5, Name = "Thiết kế logo, banner" },
            new ItemIntSimple { Id = 6, Name = "Đăng ký tên miền" },
            new ItemIntSimple { Id = 7, Name = "Duy trì tên miền" },
            new ItemIntSimple { Id = 8, Name = "Thêm tên miền zicki" },
            new ItemIntSimple { Id = 9, Name = "Quan trị web" },
            new ItemIntSimple { Id = 10, Name = "SEO web" }
        };
        public static List<ItemIntSimple> CRMServiceCollection = CRMServices.ToList();

        private static IEnumerable<ItemIntSimple> Redirects = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 1, Name = "Không chuyển hướng" },
            new ItemIntSimple { Id = 2, Name = "Từ không wwww sang có www" },
            new ItemIntSimple { Id = 3, Name = "Từ có www sang không www" }
        };
        public static List<ItemIntSimple> RedirectCollection = Redirects.ToList();

        private static IEnumerable<ItemIntSimple> WarehouseTypes = new List<ItemIntSimple>
        {
            new ItemIntSimple { Id = 0, Name = "Xuất kho" },
            new ItemIntSimple { Id = 1, Name = "Nhập kho" }
        };
        public static List<ItemIntSimple> WarehouseTypeCollection = WarehouseTypes.ToList();
        #endregion
    }
}
